diff --git a/system/libraries/Cache/drivers/Cache_memcached.php b/system/libraries/Cache/drivers/Cache_memcached.php
index 111e210..59cf468 100644
--- a/system/libraries/Cache/drivers/Cache_memcached.php
+++ b/system/libraries/Cache/drivers/Cache_memcached.php
@@ -106,7 +106,7 @@
 		}
 		else
 		{
-			throw new RuntimeException('Cache: Failed to create Memcache(d) object; extension not loaded?');
+			log_message('error', 'Cache: Failed to create Memcache(d) object; extension not loaded?');
 		}
 
 		foreach ($this->_memcache_conf as $cache_server)
@@ -284,12 +284,6 @@
 	 */
 	public function is_supported()
 	{
-		if ( ! extension_loaded('memcached') && ! extension_loaded('memcache'))
-		{
-			log_message('debug', 'The Memcached Extension must be loaded to use Memcached Cache.');
-			return FALSE;
-		}
-
-		return TRUE;
+		return (extension_loaded('memcached') OR extension_loaded('memcache'));
 	}
 }
diff --git a/system/libraries/Cache/drivers/Cache_redis.php b/system/libraries/Cache/drivers/Cache_redis.php
index d7dca19..2825acf 100644
--- a/system/libraries/Cache/drivers/Cache_redis.php
+++ b/system/libraries/Cache/drivers/Cache_redis.php
@@ -115,17 +115,17 @@
 
 			if ( ! $success)
 			{
-				throw new RuntimeException('Cache: Redis connection failed. Check your configuration.');
+				log_message('error', 'Cache: Redis connection failed. Check your configuration.');
 			}
 		}
 		catch (RedisException $e)
 		{
-			throw new RuntimeException('Cache: Redis connection refused ('.$e->getMessage().')');
+			log_message('error', 'Cache: Redis connection refused ('.$e->getMessage().')');
 		}
 
 		if (isset($config['password']) && ! $this->_redis->auth($config['password']))
 		{
-			throw new RuntimeException('Cache: Redis authentication failed.');
+			log_message('error', 'Cache: Redis authentication failed.');
 		}
 
 		// Initialize the index of serialized values.
@@ -298,13 +298,7 @@
 	 */
 	public function is_supported()
 	{
-		if ( ! extension_loaded('redis'))
-		{
-			log_message('debug', 'The Redis extension must be loaded to use Redis cache.');
-			return FALSE;
-		}
-
-		return TRUE;
+		return extension_loaded('redis');
 	}
 
 	// ------------------------------------------------------------------------
diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst
index b355d8d..7c671c0 100644
--- a/user_guide_src/source/changelog.rst
+++ b/user_guide_src/source/changelog.rst
@@ -20,6 +20,7 @@
 -  Fixed a bug (#4056) - :doc:`Input Library <libraries/input>` method ``get_request_header()`` could not return a value unless ``request_headers()`` was called beforehand.
 -  Fixed a bug where the :doc:`Database Class <database/index>` entered an endless loop if it fails to connect with the 'sqlsrv' driver.
 -  Fixed a bug (#4065) - :doc:`Database <database/index>` method ``protect_identifiers()`` treats a traling space as an alias separator if the input doesn't contain ' AS '.
+-  Fixed a bug (#4066) - :doc:`Cache Library <libraries/caching>` couldn't fallback to a backup driver if the primary one is Memcache(d) or Redis.
 
 Version 3.0.1
 =============
